package main

import (
	"fmt"
	"math/rand"
	"time"
)

// 1. 第一题目
func function1() {
	for i := 1; i <= 9; i++ {
		for j := 1; j <= i; j++ {
			fmt.Printf("%d*%d=%d\t", j, i, i*j)
		}
		fmt.Println()

	}

}

// 2. 第二题目
func function2() {
	// 定义三个变量，分别保存累加和、累乘的积和随机数的切片
	sum := 0
	product := 1
	numbers := []int{}
	for i := 1; i <= 20; i++ {
		//创建随机数生成器，使用当前时间为种子
		r := rand.New(rand.NewSource(time.Now().UnixNano()))
		num := r.Intn(21)
		if num == 0 {
			continue
		}
		numbers = append(numbers, num)
	}
	fmt.Println(numbers)
	// 遍历切片，累加和累乘
	for index, v := range numbers {
		// 修改索引为1开始，索引默认为0开始
		index += 1
		if index%2 == 0 {
			product *= v
		}
		sum += v
	}
	fmt.Printf("累加的值是：%d\n累乘的值是：%d\n", sum, product)
}

// 3. 第三题目
func function3() {
	a, b := 0, 1
	for i := 0; i < 100; i++ {
		fmt.Printf("%d\n", a)
		a, b = b, a+b

	}

}
func main() {
	fmt.Println("--------------------------------------------------------------------------------------------------")
	function1()
	fmt.Println("--------------------------------------------------------------------------------------------------")
	function2()
	fmt.Println("--------------------------------------------------------------------------------------------------")
	function3()
	fmt.Println("--------------------------------------------------------------------------------------------------")
}


// Wayne：完成的很不错